
package com.carsite.dao;

import java.util.List;

import com.carsite.model.Department;

public interface DepartmentDao extends Dao {

    /**
     * Retrieves all of the departments
     */
    public List getDepartments(Department department);

    /**
     * Gets department's information based on primary key. An
     * ObjectRetrievalFailureException Runtime Exception is thrown if 
     * nothing is found.
     * 
     * @param deptId the department's deptId
     * @return department populated department object
     */
    public Department getDepartment(final Long deptId);

    /**
     * Saves a department's information
     * @param department the object to be saved
     */    
    public void saveDepartment(Department department);

    /**
     * Removes a department from the database by deptId
     * @param deptId the department's deptId
     */
    public void removeDepartment(final Long deptId);

	public List getDeptsByBranch(String branchId);
	public List<Department> getWarehouse();
}

